import { Message } from 'element-ui';
import validate from '@/utils/validate';

const { isEmpty, isMobile } = validate;

export default function check (checkObj) {
  let checkRes = true;

  // 检查受控物料列表
  // const validSkuKeys = [
  //   { key: 'sku', name: '物料名称' }
  // ];
  // const skuLength = checkObj.vendorSupplyList.length;
  // for (let i = 0; i < skuLength; i++) {
  //   const line = i + 1;
  //   const sku = checkObj.vendorSupplyList[i];
  //   for (const item of validSkuKeys) {
  //     const checkMid = isEmpty(sku[item.key]);
  //     if (checkMid) {
  //       Message.error(`受控物料第${line}行 ${item.name}不能为空`);
  //       checkRes = false;
  //       break;
  //     }
  //   }
  // }

  // 检查资质列表
  // const validCreditKeys = [
  //   { key: 'credential', name: '证书资质' },
  //   { key: 'credentialNo', name: '证书编号' },
  //   { key: 'vaildDate', name: '证书有效期' },
  //   { key: 'skus', name: '相关物料' }
  // ];
  // const creditLength = checkObj.vendorCredentialsList.length;
  // for (let i = 0; i < creditLength; i++) {
  //   const line = i + 1;
  //   const credit = checkObj.vendorCredentialsList[i];
  //   for (const item of validCreditKeys) {
  //     const checkMid = isEmpty(credit[item.key]);
  //     if (checkMid) {
  //       Message.error(`资质第${line}行 ${item.name}不能为空`);
  //       checkRes = false;
  //       break;
  //     }
  //   }
  // }

  // 检查联系人列表
  // const validContactKeys = [
  //   { key: 'name', name: '姓名' },
  //   { key: 'mobile', name: '手机' }
  // ];
  const contactLength = checkObj.vendorContactList.length;
  for (let i = 0; i < contactLength; i++) {
    const line = i + 1;
    const contact = checkObj.vendorContactList[i];

    if (!isMobile(contact.mobile)) {
      Message.error(`联系人第${line}行 手机号码不正确`);
      checkRes = false;
      break;
    }

    // for (const item of validContactKeys) {
    //   const checkMid = isEmpty(contact[item.key]);
    //   if (checkMid) {
    //     Message.error(`联系人第${line}行 ${item.name}不能为空`);
    //     checkRes = false;
    //     break;
    //   }
    // }
  }

  // 检查基本输入
  const validKeys = [
    // 基本
    { key: 'name', name: '名称' },
    // { key: 'createDeptLevel1', name: '创建组织' },
    // { key: 'createDeptLevel2', name: '创建部门' },
    { key: 'status', name: '状态' },
    { key: 'country', name: '国家' },
    { key: 'city', name: '城市' },
    { key: 'mailingAddress', name: '通讯地址' },
    { key: 'zip', name: '邮编' },
    // { key: 'homePage', name: '主页' },
    { key: 'industry', name: '行业' },
    { key: 'vendorCreateDate', name: '创立日期' },
    { key: 'corporateRepresentative', name: '法人代表' },
    { key: 'vendorcategory', name: '类别' },
    { key: 'vendorgrade', name: '分级' },
    { key: 'characters', name: '性质' },
    { key: 'scale', name: '规模' },
    { key: 'registeredCapital', name: '注册资金' },
    // { key: 'prdAllowNo', name: '生产许可证' },
    // { key: 'businessCertificate', name: '经营许可证' },
    { key: 'registeredAddress', name: '注册地址' },
    { key: 'recordNo', name: '备案号' },
    { key: 'businessRegistration', name: '统一社会信用代码' }
    // { key: 'settlementCurrency', name: '结算币种' },
    // { key: 'settlement', name: '结算方式' },
    // { key: 'paymentTerms', name: '付款条件' },
    // { key: 'bank', name: '开户银行' },
    // { key: 'taxID', name: '税务登记号' },
    // { key: 'invoiceType', name: '发票类型' },
    // { key: 'defaultTaxRate', name: '默认税率' },
    // { key: 'bankAccountName', name: '账户名称' },
    // { key: 'bankAccountNo', name: '银行账号' },
    // { key: 'vendorContactList', name: '联系人' },
    // { key: 'vendorCredentialsList', name: '资质' },
    // { key: 'vendorSupplyList', name: '受控物料' }
  ];

  for (const valid of validKeys) {
    const checkMid = isEmpty(checkObj[valid.key]);
    if (checkMid) {
      Message.error(`${valid.name}不能为空`);
      checkRes = false;
      break;
    }
  }

  return checkRes;
}
